home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / COMMUNIC / 1312.ZIP / MT.DOC < prev    next >
Text File  |  1988-07-29  |  62KB  |  1,559 lines

  1.                      MiniTerm V1.4 Documentation
  2.  
  3. The following documents version 1.4 of the CSC Minitel Terminal
  4. emulator (MiniTerm).
  5.  
  6. This document is divided into the following sections.
  7.  
  8.         Section 1.0     - Hardware and Operating System
  9.                           Requirements
  10.         Section 2.0     - Installing the Emulator
  11.         Section 3.0     - How to run the Emulator
  12.         Section 4.0     - Emulator Commands
  13.  
  14.         Appendix A      - Command Line Parameters
  15.         Appendix B      - Files that are distributed with the
  16.                           emulator
  17.         Appendix C      - Configuration Parameters
  18.         Appendix D      - Keyboard Mapping
  19.         Appendix E      - Script Language Description
  20.         Appendix F      - Entering Control Characters
  21.         Appendix G      - Use of the Minitel Function Keys
  22.         Appendix H      - Error Messages
  23.         Appendix I      - Printing the screen
  24.  
  25.  
  26. 1.0     Hardware and Operating System Requirements
  27.         ------------------------------------------
  28.  
  29. The following minimum hardware configuration is necessary in order to
  30. run the emulator:
  31.  
  32.         - 192K RAM
  33.         - MDA, CGA, EGA or Hercules video display adaptor
  34.         - One 5.25 or 3.5 inch floppy disk drive with a capacity
  35.           of 360K or more.
  36.  
  37. The emulator requires MS or PC-DOS version 2.0 or higher.
  38.  
  39.  
  40. 2.0     Installing the Emulator
  41.         -----------------------
  42.  
  43. The specific steps that you must take to install the emulator depend
  44. on whether you received your emulator on an Installation Diskette or
  45. whether you downloaded it from a Bulletin Board. If you downloaded
  46. your copy of the emulator from a Bulletin Board then proceed to
  47. section 2.1 otherwise skip to section 2.2.
  48.  
  49. 2.1     Emulator Downloaded from a Bulletin Board
  50.  
  51. The file that you downloaded from the Bulletin Board is a self
  52. unpacking archive containing the emulator and its documentation. The
  53. best way to proceed is to create an installation diskette from this
  54. archive. To do this copy the archive to a blank formatted floppy
  55. diskette, put the diskette in drive A:, then type the following
  56. commands.
  57.  
  58.         A:
  59.         RENAME archive_name RUNME.EXE
  60.         RUNME
  61.         DEL RUNME.EXE
  62.  
  63. Now that you have created an installation diskette you can proceed to
  64. section 2.2.
  65.  
  66. 2.2     Emulator Received on an Installation Diskette
  67.  
  68. To install the emulator from an installation diskette just put the
  69. installation diskette in drive A:, set the default drive to A:, then
  70. type 'MTINST'. Once MTINST is running just follow the instructions.
  71. MTINST will prompt you for information such as your modem type,
  72. display type and the drive and directory in which you want the
  73. emulator installed.
  74.  
  75. The installation program (MTINST.EXE) creates a configuration file
  76. (MT.CFG) and copies the emulator to the installation drive/directory.
  77. The configuration file contains hardware specific parameters for your
  78. machine such as display adaptor type, communication port and modem
  79. speed.  See Appendix C for a complete description of all
  80. configuration file parameters.
  81.  
  82.  
  83. 3.0     How to run the emulator
  84.         -----------------------
  85.  
  86. Once the emulator has been installed you can run it by performing the
  87. following steps.
  88.  
  89. If you installed the emulator on a floppy disk:
  90.  
  91.         INSERT THE DISKETTE IN DRIVE A:
  92.         TYPE A:  [ENTER]
  93.         TYPE MT  [ENTER]
  94.  
  95. If you installed the emulator on a hard disk:
  96.  
  97.         TYPE C:     [ENTER]     (if installed on drive C:)
  98.         TYPE CD\MT  [ENTER]     (if installed in \MT subdirectory)
  99.         TYPE MT     [ENTER]
  100.  
  101. A real Minitel terminal contains nine special keys (called function
  102. keys) that are not on the PC keyboard. The nine special keys are
  103. labelled INDEX, CANCEL, PREVIOUS, REPEAT, GUIDE, CORRECTION, NEXT,
  104. SEND and LOCAL/LINE. Since these keys are not available on the PC
  105. keyboard, the function keys on the PC keyboard (labelled F1 to F9)
  106. are used as a replacement. Some of the Minitel special keys have more
  107. than one replacement on the PC keyboard. For example if an
  108. application asks you to press the SEND key you can either press F8 or
  109. the ENTER key. The following table shows the mapping of the Minitel
  110. function keys to their equivalents on the PC keyboard.
  111.  
  112.     English Minitel                             French Minitel
  113.     Key Labeling     PC Equivalent(s)           Key Labeling
  114.  
  115.     INDEX            F1 or HOME                 SOMMAIRE
  116.     CANCEL           F2 or END                  ANNULATION
  117.     PREVIOUS         F3 or PGUP or SHIFT TAB    RETOUR
  118.     REPEAT           F4                         REPETITION
  119.     GUIDE            F5                         GUIDE
  120.     CORRECTION       F6 or BKSP                 CORRECTION
  121.     NEXT             F7 or PGDN or TAB          SUITE
  122.     SEND             F8 or ENTER                ENVOI
  123.     LOCAL LINE       F9                         CONNEXION FIN
  124.  
  125. From within the emulator you can press the PC key labelled F10 to get
  126. a help menu showing the above Minitel function key mapping. The help
  127. menu also displays a listing of the following important commands that
  128. control your link with the network.
  129.  
  130.      Logon to Network           SHIFT F1
  131.      Change Service             SHIFT F2
  132.      Logoff Network then Quit   SHIFT F3
  133.  
  134. See Appendix D for the complete mapping of the Minitel keyboard to
  135. the PC keyboard.
  136.  
  137. Of the Minitel function keys the most commonly used ones are SEND
  138. which is used like ENTER (or Carriage Return) on a normal terminal,
  139. CORRECTION which allows you to correct your typing errors (I use this
  140. one a lot) and GUIDE which is used to request help from the service
  141. you are using. See Appendix G for a more complete description of the
  142. uses of the Minitel function keys.
  143.  
  144.  
  145. 4.0     Emulator Commands
  146.         -----------------
  147.  
  148. The following commands can be issued during Minitel emulation.
  149. Commands of the form 'ALT letter' are issued by holding down the ALT
  150. key and typing the 'letter'. For example the command 'ALT x' means
  151. hold down the ALT key then press the letter x key. Commands of the form
  152. 'SHIFT Fx' are issued by holding down the SHIFT key then pressing the
  153. key labelled Fx.
  154.  
  155. 4.1     Send Break Signal (ALT b)
  156.  
  157. This command sends a break signal to the remote system. The length of
  158. the break sent is specified by the BREAK_LEN configuration parameter.
  159. The value in the BREAK_LEN parameter is rounded up to the nearest
  160. multiple if 55 milliseconds (this is the default granularity of the PC
  161. clock interupts).
  162.  
  163. 4.2     Exit emulator without dropping line (ALT x)
  164.  
  165. This command allows you to exit to DOS from the emulator without
  166. dropping the line.
  167.  
  168. 4.3     Drop line then exit emulator (ALT q)
  169.  
  170. This command is only available during TTY emulation. During Minitel
  171. emulation the SHIFT F3 command must be used to disconnect from the
  172. current service and exit from the emulator.
  173.  
  174. During TTY emulation this command drops the line and then terminates
  175. execution of the emulator. Prior to dropping the line this command
  176. sends a LOCAL LINE key to disconnect from the current service. For
  177. HAYES modems the line is dropped by first sending three plus signs
  178. (+++) to go into local mode and then issuing the ATH command. For
  179. other types of modems the line is dropped by dropping the RS232 DTR
  180. signal.
  181.  
  182. 4.4     Program Function Keys (SHIFT F1 -> SHIFT F10)
  183.  
  184. The program function keys can be used to extend the functionality of
  185. the emulator by adding your own commands.  A program function key can
  186. be used to execute a script language program (see Appendix E for
  187. instructions on writing your own script language programs) or to
  188. cause a pre-defined series of characters to be sent to the remote
  189. system as if they were typed at the keyboard. See Section C.5
  190. (Appendix C, Section 5) for a description of how assign values to
  191. function keys.
  192.  
  193. During Minitel emulation the program function keys SHIFT F1 thru
  194. SHIFT F4 perform the following functions no matter what values you
  195. assign to them.
  196.  
  197.     SHIFT F1    - LOGON TO NETWORK
  198.  
  199.                   Automatically dial and log on to the network.
  200.                   This is normally the first command that you will
  201.                   issue after starting the emulator.
  202.  
  203.     SHIFT F2    - CHANGE SERVICE
  204.  
  205.                   When connected to a service this command can be
  206.                   used to return you to the service menu so that
  207.                   you can select a new service.
  208.  
  209.     SHIFT F3    - LOGOFF NETWORK then QUIT
  210.     
  211.                   This command disconnects you from the current
  212.                   service, drops the line and then returns you to DOS.
  213.  
  214.     SHIFT F4    - NETWORK LOGON
  215.     
  216.                   If you have an auto dial modem that does not
  217.                   work with SHIFT F1 then you can manually instruct
  218.                   your modem to dial and then issue this command to
  219.                   logon to the network.
  220.  
  221. It is possible for the SHIFT F1, SHIFT F2 and SHIFT F4 commands to
  222. fail for a number of reasons, including, a bad communication line, a
  223. service not available or network failure. See Appendix H (Error
  224. Messages) for a list of possible errors and instructions on how to
  225. recover in case of an error.
  226.  
  227. The remaining program function keys (SHIFT F5 thru SHIFT F10) can be
  228. used to add your own commands to the emulator. The command ALT f can
  229. be used to display the current settings of the program function
  230. keys. During TTY emulation all ten program function keys are
  231. available to add new commands to the emulator.
  232.  
  233. 4.5     Display Help Menu (F10)
  234.  
  235. This command displays a menu containing the Minitel function keys and
  236. the most used emulator commands. To leave the menu you can either
  237. press the ESC key or select one of the commands from the menu.
  238.  
  239. 4.6     Program Function Key Menu (ALTf)
  240.  
  241. This command displays a menu containing all of the program function
  242. key settings. To leave the menu you can either press one of the program
  243. function keys (to run the key) or press ESC to leave the menu without
  244. running a program function key.
  245.  
  246. If you have read sections one through four you now know all you need
  247. to know to use MiniTerm. The appendices describe advanced information
  248. and features that are not required during normal use of the
  249. emulator.
  250.  
  251.  
  252. APPENDIX A      Command Line Parameters
  253.                 -----------------------
  254.  
  255. During startup MiniTerm reads the contents of the file MT.CFG to
  256. determine hardware specific information and obtain function key and
  257. terminal settings (See Appendix C for a complete description of the
  258. configuration file).
  259.  
  260. It is possible to have more than one configuration file. This is
  261. useful if you routinely access more than one service and you need to
  262. have different configuration parameters for each. To create a new
  263. configuration file use the DOS copy command to create a copy of the
  264. default configuration file (MT.CFG), then use a text editor such as
  265. EDLIN to change the parameters to the values required by the new
  266. system.
  267.  
  268. Example:
  269.  
  270.         A>copy mt.cfg newconf.cfg       <- make a copy of mt.cfg
  271.         A>edlin newconf.cfg             <- change parameter values
  272.         A>mt newconf                    <- invoke MiniTerm using the
  273.                                            new configuration file
  274.  
  275. In this example we created a new configuration file called
  276. 'NEWCONF.CFG' and invoked MiniTerm with the new configuration. Note
  277. that on the command line we typed 'mt newconf' rather than 'mt
  278. newconf.cfg'. If you do not specify an extension on the configuration
  279. file name then MiniTerm automatically appends a '.CFG'.
  280.  
  281. Some configuration parameters can be changed using command line
  282. options. For example suppose that our configuration file 'MT.CFG'
  283. specifies that COM1: is to be used for communications and we really
  284. want to use COM2:. This can be done with the following command.
  285.  
  286.         mt /c2
  287.  
  288. The above command will start the emulator using COM2: for
  289. communications. When you exit from the emulator MiniTerm will
  290. automatically change the communications port parameter in 'MT.CFG'
  291. from one to two so that the next time you invoke MiniTerm you will
  292. not have to specify the '/c2'. The backslash in the command tells
  293. MiniTerm that you are specifying a command line option and not a
  294. configuration file name. The 'c' specifies that we want to change the
  295. communications port and the '2' says that we want to change the
  296. communications port to COM2:. Command line parameters can also be
  297. used in combination with a configuration file name. In the following
  298. example the configuration file 'NEWCONF.CFG' is used instead of
  299. 'MT.CFG'.
  300.  
  301.         mt newconf /c2
  302.  
  303. The general form of all command line options is:
  304.  
  305.         backslash single_character_option option_parameter
  306.  
  307. No spaces are allowed between the single_character_option and the
  308. option_parameter.  Not all options have an option parameter. Either
  309. upper or lower case can be specified for both the option name and
  310. parameter. The following table lists all of the available command
  311. line options and the valid parameter values for each.
  312.  
  313.         Equivalent
  314.         Config file
  315. Option  Parameter        Description
  316.  
  317. c       COMMPORT         Set communications port
  318.                          Valid parameter values are 1 and 2
  319. b       SPEED            Set line speed in bits per second
  320.                          Valid parameter values are:
  321.                              300,1200,2400,4800,9600,19200
  322. p       PARITY           Set the character parity type
  323.                          Valid param values are o,e,n,m,s
  324.                          Where o=ODD,e=EVEN,n=NONE,m=MARK,s=SPACE
  325. d       DATABITS         Set the number of data bits per character
  326.                          Valid parameter values are 7 and 8
  327. s       STOPBITS         Set the number of stop bits per character
  328.                          Valid parameter values are 1 and 2
  329. a       DISPLAY_ADAPTOR  Specify display adaptor type
  330.                          Valid parameter values are H,C,E,M
  331.                          Where H=Hercules,C=CGA,E=EGA,M=MDA
  332. e       EMULATION        Specifies the type of terminal to be
  333.                          emulated
  334.                          Valid parameter values are T and M
  335.                          Where T=TTY and M=Minitel
  336. m       <none>           Specifies the name of a script (macro)
  337.                          language program to run after startup.
  338. ?                        Causes this table to be printed at the
  339.                          terminal. This option has no parameters.
  340.  
  341. More than one command line parameter can be specified when starting
  342. MiniTerm. The syntax of the MiniTerm command line is:
  343.  
  344.         mt config_file_name /cx /bx /px /dx /sx /ax /ex /mx /?
  345.  
  346. Notes:
  347.  
  348. The 'x' denotes the position of the option parameter.  Command line
  349. options can be specified in any order. The configuration file name(s)
  350. can also appear after or between command line options. If more than
  351. one configuration file is named on the command line than they are
  352. read in the order specified and only the last one is updated to
  353. reflect any changes.  Having more than one configuration file allows
  354. you to separate the different types of parameters into separate
  355. configuration files. For example you may wish to put the
  356. communications parameters in one file and the program function key
  357. settings in another.
  358.  
  359. Examples:
  360.  
  361. In this example we start MiniTerm using the configuration file
  362. 'INFONET.CFG' and specify that the line speed is to be changed to
  363. 2400 bps (bits per second) and that the display adaptor is to be
  364. changed to EGA.
  365.  
  366.         mt infonet /b2400 /ae
  367.  
  368. The following example is the same as the first except that we specify
  369. two configuration file names.
  370.  
  371.         mt origconf newconf /b2400 /ae
  372.  
  373. Suppose that we want a line speed of 2400 bps but that we do not want
  374. to update the original configuration file.  In the following example
  375. this is done by specifying the DOS device NUL as the last
  376. configuration file name.
  377.  
  378.         mt mt.cfg nul /b2400
  379.               ^    ^    ^
  380.               |    |    |
  381.               |    |    Specifies modification to original
  382.               |    |    configuration.
  383.               |    Specifies name of the configuration file where
  384.               |    the updated configuration is to be stored.
  385.               Original configuration read from here.
  386.  
  387.  
  388. APPENDIX B      Files that are distributed with the emulator
  389.                 --------------------------------------------
  390.  
  391. The following files are distributed with the emulator.
  392.  
  393. MT.EXE       - The MiniTerm Minitel terminal emulator
  394. CGA.FNT      - Data file containing character font descriptions
  395.                for the CGA and EGA display adaptors (only necessary
  396.                when using a CGA or EGA display adaptor)
  397. HERCULES.FNT - Data file containing character font descriptions
  398.                for the HERCULES display adaptor (only necessary
  399.                when using a HERCULES display adaptor)
  400. MT.DOC       - The file that you are now reading.
  401. MTINST.EXE   - Emulator installation program.
  402. PHONE.DAT    - Infonet access telephone listing (used by MTINST)
  403. MTINST.FIL   - Emulator file list (used by MTINST)
  404. MTC.EXE      - Script Language Compiler
  405. LOGON.MT     - Script language program to dial and logon to the
  406.                Infonet service network (needed by the emulator
  407.                SHIFT F1 command)
  408. LOGON.MTO    - Compiled version of the above program
  409. CHANGESE.MT  - Script language program which causes a disconnect
  410.                from the current service and returns you to the menu
  411.                so that you can select a new service (needed by the
  412.                emulator SHIFT F2 command)
  413. CHANGESE.MTO - Compiled version of the above program
  414. NETLOGON.MT  - Script language program to that logs on to the Minitel
  415.                service network (needed by emulator SHIFT F1, SHIFT F2
  416.                and SHIFT F4 commands)
  417. NETLOGON.MTO - Compiled version of the above program
  418.  
  419.  
  420. APPENDIX C      Configuration parameters
  421.                 ------------------------  
  422.  
  423. This section describes the parameters in the MiniTerm configuration
  424. file (MT.CFG). The configuration file contains one parameter per
  425. line.  Lines are separated by CR/LF pairs. All lines have the
  426. following format.
  427.  
  428.         parameter_name=parameter_value
  429.  
  430. The equal sign (ASCII 3D) separates the parameter name from its
  431. value. Control characters can be specified in the parameter value by
  432. using a circumflex (^) followed by another character. For example ^M
  433. (control M) can be used to specify a carriage return. Two
  434. circumflexes in a row can be used to specify a circumflex. See
  435. Appendix F for a detailed discussion on entering control characters
  436. in a string.
  437.  
  438. The following table describes all of the configuration parameters
  439. that are implemented in this version of the emulator.
  440.  
  441. C.1)    Modem Paramters
  442.  
  443. Parameter Name      Type    Description
  444.  
  445. MODEM               int     Describes the type of modem. Valid
  446.                             values are:
  447.                                 0 = HAYES300
  448.                                 2 = HAYES1200
  449.                                 3 = HAYES1200B
  450.                                 4 = HAYES2400
  451.                                 5 = HAYES2400B
  452.                                 6 = MANUAL
  453.                                 7 = DIRECT
  454.                                 8 = OTHER
  455.  
  456. MODEM_INIT          char    String that must be sent to initialize
  457.                             the modem (if any)
  458.  
  459. MODEM_RESPONSE      char    String that the modem sends in response
  460.                             to an initialization command.
  461.  
  462. MODEM_DIAL_PREFIX   char    String that must prefix the telephone
  463.                             number in a dial command
  464.  
  465. MODEM_DIAL_SUFFIX   char    String that must follow the telephone
  466.                             number in a dial command
  467.  
  468. MODEM_SUCCESS       char    Specifies a successful response to a
  469.                             modem dial request. There can be more
  470.                             than one of these parameters present if
  471.                             there are more than one success responses
  472.                             (maximum of ten).
  473.  
  474. MODEM_FAILURE       char    Specifies a failure response to a modem
  475.                             dial request. There can be more than one
  476.                             of these parameters present if there
  477.                             are more than one failure responses
  478.                             (maximum of ten).
  479.  
  480.  
  481. C.2)    User Information
  482.  
  483. Parameter Name      Type    Description
  484.  
  485. PHONE               char    Telephone number of nearest INFONET node
  486. USERID              char    Network User ID
  487. PASSWORD            char    Network password
  488.  
  489.  
  490. C.3)    Communication Parameters
  491.  
  492. Parameter Name      Type    Description
  493.  
  494. COMMPORT            int     Number of the port to use for
  495.                             communications (1=COM1, 2=COM2, etc)
  496.  
  497. SPEED               int     Communications speed in bits per second
  498.                             (one of 300, 1200, 2400, 4800, 9600,
  499.                             19200)
  500.  
  501. PARITY              char    Parity (one of O,E,N,M,S = ODD, EVEN,
  502.                             NONE, MARK, SPACE respectively)
  503.  
  504. DATABITS            int     Data Bits (either 7 or 8)
  505.  
  506. STOPBITS            int     Stop Bits (either 1 or 2)
  507.  
  508. BREAK_LEN           int     Duration of BREAK signal in milliseconds
  509.                             (a break signal can be sent with the
  510.                              ALTb command)
  511.  
  512. CARRIER_DETECTABLE  int     This parameter informs the emulator
  513.                             if the presence of carrier is
  514.                             detectable by looking at the state of
  515.                             the RS232 CD pin. In some cases the
  516.                             carrier is not detectable because the
  517.                             modem keeps this signal high or the
  518.                             pin is missing from the cable that
  519.                             connects the modem to the PC.
  520.  
  521. FLOWCONTROL         int     This parameter can have one of the
  522.                             following values.
  523.                                 0 = NONE
  524.                                 1 = XON/XOFF (TTY emulation only)
  525.                                 2 = CTS/RTS hardware protocol
  526.                             (XON/XOFF protocol should not be used
  527.                              during Minitel emulation)
  528.  
  529. If the port is other than COM1 or COM2 then the following parameters
  530. must also be specified (values must be specified in a decimal radix).
  531.  
  532. ADDR8250            int     I/O address of 8250 UART
  533. INTVECTOR           int     Interupt vector number
  534. ADDR8259            int     Absolute I/O address of 8259 Interupt
  535.                             Controller
  536. IRQ                 int     IRQ number for 8259
  537.  
  538.  
  539. C.4)    Display Parameters
  540.  
  541. Parameter Name      Type    Description
  542.  
  543. DISPLAY_ADAPTOR     int     Type of display adaptor in the PC.
  544.                             Valid values are:
  545.                                 0 = HGC         (HERCULES)
  546.                                 1 = CGA
  547.                                 2 = EGA
  548.                                 3 = MDA         (MONOCHROME)
  549.  
  550.  
  551. C.5)    Program Function Keys
  552.  
  553. Parameter Name      Type    Description
  554.  
  555. PF1                 char    Setting of program function key 1
  556. PF2                 char    Setting of program function key 2
  557. PF3                 char    Setting of program function key 3
  558. PF4                 char    Setting of program function key 4
  559. PF5                 char    Setting of program function key 5
  560. PF6                 char    Setting of program function key 6
  561. PF7                 char    Setting of program function key 7
  562. PF8                 char    Setting of program function key 8
  563. PF9                 char    Setting of program function key 9
  564. PF10                char    Setting of program function key 10
  565.  
  566. Each program function key value is either NULL or has the following
  567. format.
  568.  
  569. Positions    Meaning
  570.  
  571. 1            Type of value stored in the key. Must be one of the
  572.              following.
  573.  
  574.                  M   - A MACRO to be executed
  575.                  S   - A string to be sent
  576.  
  577. 2            A single dash character (ASCII 2DH). This is just a
  578.              separator to make the line readable.
  579.  
  580. 3-           Function key value.
  581.  
  582.                 Key Type  Field Meaning
  583.  
  584.                 M         Name of file containing a macro to be run
  585.                           when this key is pressed
  586.                 S         String to be sent to the remote system when
  587.                           this key is pressed. Control characters can
  588.                           be specified in this string by using a
  589.                           circumflex (^) followed by another
  590.                           character (See Appendix F).
  591.  
  592. e.g.
  593. To assign a HAYES dial command to program function key five the
  594. following line could be added to the configuration file.
  595.  
  596.         PF5=S-ATDP438-8304^M
  597.         ^   ^ ^            ^
  598.         |   | |            |
  599.         |   | |            The ^M specifies a carriage return
  600.         |   | Program function key value
  601.         |   Program function key type
  602.         Names the program function key to be set
  603.  
  604. Note that during Minitel terminal emulation the configuration file
  605. parameters SHIFT F1 through SHIFT F4 are ignored.
  606.  
  607.  
  608. C.6)    Terminal Parameters
  609.  
  610. Parameter Name      Type    Description
  611.  
  612. EMULATION           int     Type of emulation to perform.
  613.                             Value must be one of:
  614.                                 0 = TTY
  615.                                 1 = MINITEL
  616.  
  617. LOCAL_ECHO          int     Local echo on or off (0=OFF, 1=ON).
  618.                             During MINITEL emulation this flag works
  619.                             with the CARRIER_DETECTABLE flag. If
  620.                             the carrier is detectable and local echo
  621.                             is on then keystrokes will be echoed to
  622.                             the screen when there is no carrier
  623.                             (i.e. when 'L' appears on status row).
  624.                             During TTY emulation keystrokes are
  625.                             always echoed when this parameter is on.
  626.  
  627. PAGE_MODE           int     Page or scroll mode flag (0=SCROLL MODE,
  628.                             1=PAGE MODE)
  629.  
  630.  
  631. APPENDIX D      Keyboard Mapping
  632.                 ----------------
  633.  
  634. The following describes the mapping of the Minitel keyboard to the PC
  635. keyboard.
  636.  
  637. Single Codes
  638.  
  639. Code Sent                             Key or Combination
  640. (in hex)       Character                   of Keys
  641.                                     Minitel         PC    
  642.  
  643.   00              NUL               Ctrl'           Ctrl @
  644.   01              SOH               Ctrl A
  645.   02              STX               Ctrl B
  646.   03              ETX               Ctrl C
  647.   04              EOT               Ctrl D
  648.   05              ENQ               Ctrl E
  649.   06              ACK               Ctrl F
  650.   07              BEL               Ctrl G
  651.   08              BS                Ctrl H          grey minus or Ctrl H
  652.   09              HT                Ctrl I
  653.   0A              LF                Ctrl J or Ctrl: Ctrl J
  654.   0B              VT                Ctrl K or Ctrl; Ctrl K
  655.   0C              FF                Ctrl L
  656.   0D              CR                Ctrl M or Enter grey plus or Ctrl M
  657.   0E              SO                Ctrl N
  658.   0F              SI                Ctrl O
  659.   10              DLE               Ctrl P
  660.   11              Cursor ON         Ctrl Q
  661.   12              REP               Ctrl R
  662.   13              SEP               Ctrl S
  663.   14              Cursor OFF        Ctrl T
  664.   15              NACK              Ctrl U
  665.   16              SYN               Ctrl V
  666.   17              ETB               Ctrl W
  667.   18              CAN               Ctrl X
  668.   19              SS2               Ctrl Y
  669.   1A              SUB               Ctrl Z
  670.   1B              ESC               Esc
  671.   1C              FS                Ctrl ,          Ctrl | or Ctrl \
  672.   1D              SS3               Ctrl -          Ctrl } or Ctrl ]
  673.   1E              RS                Ctrl .          Ctrl ^
  674.   1F              US                Ctrl ?          Ctrl -
  675.   20              Space             Spacebar        Spacebar
  676.   21              !                 SK 1            **
  677.   22              "                 SK 2            **
  678.   23              #                 # or SK 3       **
  679.   24              $                 SK 4            **
  680.   25              %                 SK 5            **
  681.   26              &                 SK 6            **
  682.   27              '                 'or SK 7        **
  683.   28              (                 SK 8            **
  684.   29              )                 SK 9            **
  685.   2A              *                 * or SK :       **
  686.   2B              +                 SK ;            **
  687.   2C              ,                 ,               **
  688.   2D              -                 -               **
  689.   2E              .                 .               **
  690.   2F    Box with diagonal line      SK ?            /
  691.   30              0                 0
  692.   31              1                 1
  693.   32              2                 2
  694.   33              3                 3
  695.   34              4                 4
  696.   35              5                 5
  697.   36              6                 6
  698.   37              7                 7
  699.   38              8                 8
  700.   39              9                 9
  701.   3A              :                 :
  702.   3B              ;                 ;
  703.   3C              <                 SK ,            ** 
  704.   3D              =                 SK -            **
  705.   3E              >                 SK .            **
  706.   3F              ?                 ?               **
  707.   40              @                 SK '            **   
  708.   41              A                 A               Shift A
  709.   42              B                 B               Shift B
  710.   43              C                 C               Shift C
  711.   44              D                 D               Shift D
  712.   45              E                 E               Shift E
  713.   46              F                 F               Shift F
  714.   47              G                 G               Shift G
  715.   48              H                 H               Shift H
  716.   49              I                 I               Shift I
  717.   4A              J                 J               Shift J
  718.   4B              K                 K               Shift K
  719.   4C              L                 L               Shift L
  720.   4D              M                 M               Shift M
  721.   4E              N                 N               Shift N
  722.   4F              O                 O               Shift O
  723.   50              P                 P               Shift P
  724.   51              Q                 Q               Shift Q
  725.   52              R                 R               Shift R
  726.   53              S                 S               Shift S
  727.   54              T                 T               Shift T
  728.   55              U                 U               Shift U
  729.   56              V                 V               Shift V
  730.   57              W                 W               Shift W
  731.   58              X                 X               Shift X
  732.   59              Y                 Y               Shift Y
  733.   5A              Z                 Z               Shift Z
  734.   5B              [                 SK *            **
  735.   5C    10 o'clock diagonal line    SK Cancel       \
  736.   5D              ]                 SK #            **
  737.   5E          Up Arrow              SK 0            ^
  738.   5F    Low horizontal line         Ctrl 6          _
  739.   60    Middle horizontal line      Ctrl 5          `
  740.   61              a                 SK A            A
  741.   62              b                 SK B            B
  742.   63              c                 SK C            C
  743.   64              d                 SK D            D
  744.   65              e                 SK E            E
  745.   66              f                 SK F            F
  746.   67              g                 SK G            G
  747.   68              h                 SK H            H
  748.   69              i                 SK I            I
  749.   6A              j                 SK J            J
  750.   6B              k                 SK K            K
  751.   6C              l                 SK L            L
  752.   6D              m                 SK M            M
  753.   6E              n                 SK N            N
  754.   6F              o                 SK O            O
  755.   70              p                 SK P            P
  756.   71              q                 SK Q            Q
  757.   72              r                 SK R            R
  758.   73              s                 SK S            S
  759.   74              t                 SK T            T
  760.   75              u                 SK U            U
  761.   76              v                 SK V            V
  762.   77              w                 SK W            W
  763.   78              x                 SK X            X
  764.   79              y                 SK Y            Y
  765.   7A              z                 SK Z            Z
  766.   7B    Left vertical line          Ctrl 1 or       {
  767.                                     SK repeat
  768.   7C    Middle vertical line        Ctrl 2          |
  769.   7D    Right vertical line         Ctrl 3 or       }
  770.                                     SK send
  771.   7E    Upper horizontal line       Ctrl 4          ~
  772.   7F    Filled in Box               Ctrl <--        Ctrl BS
  773.  
  774.  
  775. Sequences of two or three codes
  776.  
  777. Code sent                          Key or combination
  778. (in hex)   Character                    of keys
  779.                                  Minitel             PC
  780.  
  781.  19,41     ` (grave accent)      SK Next             (not impl)
  782.  19,43     ^ (circumflex)        SK Index            (not impl)
  783.  
  784.  
  785. Sequences sent by function keys
  786.  
  787. Key or Combination
  788.    of keys               PC Key                     Codes Sent
  789.  
  790. Send                     F8 or Enter                13,41
  791. Previous                 F3 or Shift Tab or PgUp    13,42
  792. Repeat                   F4                         13,43
  793. Guide                    F5                         13,44
  794. Cancel                   F2 or End                  13,45
  795. Index                    F1 or Home                 13,46
  796. Correction               F6 or Backspace            13,47
  797. Next                     F7 or Tab or PgDn          13,48
  798. Line/Local               F9                         13,49-Modem
  799. SK Line/Local            (not supported on PC)      13,49-Socket
  800. Ctrl Line/Local          Alt b                      Break to modem
  801.  
  802.  
  803. Notes:
  804. 1) SK = Special key on Minitel
  805.       = Shift key on PC
  806. 2) Where there is no PC key specified the PC key is the same as the
  807.    Minitel key.
  808. 3) '**' Means to use the Key marked for this purpose on your
  809.    particular keyboard.
  810. 4) 'Grey minus' means the minus sign key on the numeric keypad. This
  811.    key causes a CR to be sent to the remote system.
  812. 5) 'Grey plus' means the plus sign key on the numeric keypad. This
  813.    keys causes a backspace character to be sent to the remote system.
  814.  
  815.  
  816. APPENDIX E      MiniTerm Script Language
  817.                 ------------------------
  818.  
  819. E.1     Script Language Compiler (MTC.EXE)
  820.  
  821. The MiniTerm script language is a semi-compiled language. To create a
  822. script language program any text editor which creates an ASCII format
  823. file can be used.  Once a script program has been created it must be
  824. compiled by the program 'MTC.EXE' (MiniTerm Compiler) before it can
  825. be executed. MTC checks the source for syntax errors and produces a
  826. compiled program as its result. Script source files are expected to
  827. have an extension of 'MT'.  MTC gives compiled macros an extension of
  828. 'MTO' (MiniTerm Object).
  829.  
  830. To compile a program with MTC just type the command
  831.  
  832.         MTC source_file_name
  833.  
  834. in response to the DOS prompt. It is not necessary to specify the
  835. '.MT' extension of the source file name. If you do not specify the
  836. source file name on the command line then MTC will prompt you with
  837. the line
  838.  
  839.         'Source file name ?'.
  840.  
  841. If you enter a carriage return only in response to the source file
  842. prompt then MTC will prompt you to enter the program source at the
  843. terminal.
  844.  
  845. The following diagram illustrates the macro creation process.
  846.  
  847.                         Create Macro Source
  848.                         file with text editor
  849.                         (create mymacro.mt)
  850.                                 |
  851.                                 |
  852.                                 V
  853.                             MTC mymacro
  854.                                 |
  855.                                 |
  856.                                 V
  857.                             mymacro.mto
  858.  
  859.  
  860. E.2     Running a Script Language Program
  861.  
  862. Scripts can be started by assigning them to a program function key
  863. then pressing the program function key at run time or by using the /m
  864. command line parameter. For example typing 'mt /mlogon' starts
  865. MiniTerm then invokes the script program named 'logon'. Only one
  866. script language program can be specified on the command line. If more
  867. than one are specified than only the one that was last named is run.
  868.  
  869. While a script language program is running a reverse video 'M' will
  870. appear on column 40 of the status row.  A running script language
  871. program can be aborted at any time by pressing the ESC key.
  872.  
  873.  
  874. E.3     Script Language Description
  875.  
  876. A MiniTerm script language program consists of a series of
  877. statements.  Each statement can be preceeded by a label. A label
  878. consists of up to 15 alphanumeric characters (and underscore)
  879. followed by a colon. The first character of a label must be
  880. alphabetic. Comments can be placed anywhere in a program by enclosing
  881. the comment within curly brackets ({}). The END directive must follow
  882. the last statement of a script language program (the END directive is
  883. a message to the script language compiler (MTCOMP) telling it that
  884. it has reached the end of the program).
  885.  
  886. The following is a description of all script language statements.
  887.  
  888. E.3.1)  DIAL statement
  889.  
  890. The dial statement causes the modem to dial Infonet using the Phone
  891. number and modem information from the MiniTerm configuration file. If
  892. the dial attempt fails then the script language program is aborted
  893. and a failure message is printed on the screen. The DIAL command
  894. supports all required modems for the HOST machine. For example on the
  895. PC the DIAL command supports the HAYES modem, MANUAL dial modems,
  896. DIRECT modems and any command driven auto dial modem.
  897.  
  898. The following algorithm details the logic used by the DIAL command:
  899.  
  900. a) If the modem type is direct then terminate successfully otherwise
  901.    proceed with step b).
  902.  
  903. b) If the modem type is manual dial then proceed with step c)
  904.    otherwise go to step e)
  905.  
  906. c) Prompt user to dial the number
  907.  
  908. d) Prompt user for a key;
  909.    If the user enters an ESC then terminate with failure
  910.    If the user enters a key other than ESC terminate successfully
  911.    If the carrier signal goes from low to high while waiting for
  912.         a key then terminate successfully.
  913.  
  914. e) If there is a MODEM_INIT parameter in the configuration file then
  915.    send it and proceed to step f) otherwise proceed to step h).
  916.  
  917. f) If there is a MODEM_RESPONSE parameter in the configuration file
  918.    then proceed to step g) otherwise wait till two seconds elapses
  919.    with no data received from the remote system then proceed
  920.    to step h).
  921.  
  922. g) If the modem response is not received within 10 seconds then
  923.    terminate with failure otherwise proceed to step h).
  924.  
  925. h) Build a dial command from the MODEM_DIAL_PREFIX, PHONE and the
  926.    MODEM_DIAL_SUFFIX configuration parameters then send the dial
  927.    command to the modem.
  928.  
  929. i) If there are no MODEM_SUCCESS configuration parameters then
  930.    inform the user that a dial command has been sent and proceed
  931.    to step d).
  932.  
  933. j) Wait for any of the MODEM_SUCCESS or MODEM_FAILURE responses to
  934.    be received.
  935.    If 90 seconds go by with none of the success or failure responses
  936.         received then terminate with failure.
  937.    If a success response is received then terminate successfully.
  938.    If a failure response is received then proceed to step k).
  939.  
  940. k) Prompt the user to see if he wants to try another dial attempt.
  941.    If 'YES' then proceed to step e) otherwise terminate with failure.
  942.  
  943.  
  944. E.3.2)  BRANCH statement
  945.  
  946. SYNTAX:
  947.         BRANCH label
  948.  
  949. The BRANCH statement causes program execution continue with the
  950. statement following the given label rather than the next statement.
  951.  
  952.         statement 1
  953.         statement 2
  954.         BRANCH skip
  955.         statement 3
  956.         statement 4
  957. skip:   statement 5
  958.  
  959. In the above example the statements will be executed in the this
  960. order:
  961.  
  962.         statement 1
  963.         statement 2
  964.         statement 5
  965.  
  966.  
  967. E.3.3)  PAUSE statement
  968.  
  969. SYNTAX:
  970.         PAUSE tenths_of_second
  971.  
  972. The PAUSE statement causes the program to halt for the given number
  973. of tenths of a second before proceeding with the next statement.
  974.  
  975. e.g.
  976.         PAUSE 10                <- pause for 1 second
  977.  
  978.  
  979. E.3.4)  TYPE statement
  980.  
  981. SYNTAX:
  982.         TYPE string
  983.  
  984. The TYPE statement causes the characters in the given string to be
  985. sent to the remote system as though they were typed at the terminal.
  986.  
  987. The string can consist of any combination of the following.
  988.  
  989.         - a quoted string. The quoted string can contain diagraphs
  990.           of the form '^letter' to include control characters in the
  991.           string. For example the digraph ^M is a carriage return.
  992.           See Appendix F for a complete description of digraphs. See
  993.           notes at the end of section E.5 for more details on quoted
  994.           strings.
  995.         - a Minitel function key (one of LOCAL_LINE, INDEX,
  996.           CANCEL, PREVIOUS, REPEAT, GUIDE, CORRECTION, NEXT,
  997.           SEND)
  998.         - a character constant (CR, LF, BS, BELL)
  999.         - any of the following configuration parameter names
  1000.                 PASSWORD
  1001.                 PHONE
  1002.                 USERID
  1003.  
  1004. e.g.
  1005.         TYPE 'AT?' CR     <- send string AT? followed by a CR
  1006.         TYPE 'AT^M'       <- same as above
  1007.         TYPE 'CHAT' SEND  <- send the string CHAT followed by
  1008.                              the Minitel send key
  1009.         TYPE USERID CR    <- send the value of the configuration
  1010.                              file USERID parameter followed by
  1011.                              a CR (carriage return)
  1012.  
  1013.  
  1014. E.3.5)  QUIT statement
  1015.  
  1016. Terminates execution of the current script program.
  1017.  
  1018.  
  1019. E.3.6)  DOPF statement
  1020.  
  1021. SYNTAX:
  1022.         DOPF number
  1023.  
  1024. Causes the named program function key to be executed. This causes the
  1025. same effect as the user pressing the given function key at the
  1026. keyboard. Script language programs can invoke other script language
  1027. programs using function keys.
  1028.  
  1029. e.g.
  1030.         DOPF 2          <- execute PF2
  1031.  
  1032.  
  1033. E.3.7)  MESSAGE statement
  1034.  
  1035. SYNTAX:
  1036.         MESSAGE string
  1037.  
  1038. This command causes the given string to appear in a pop up window on
  1039. the screen along with the message 'PRESS ANY KEY TO CONTINUE'. After
  1040. the user presses a key the pop up window disappears and the underlying
  1041. screen is restored. The string containing the message to be printed
  1042. must have the same format as a string in a TYPE statement.
  1043.  
  1044. e.g.
  1045.         MESSAGE 'Logon Procedure has failed'
  1046.  
  1047.  
  1048. E.3.8)  LOOP statement
  1049.  
  1050. SYNTAX:
  1051.         LOOP number
  1052.             statements
  1053.             AT_END_DO
  1054.                 statements
  1055.         ENDLOOP
  1056.  
  1057. The LOOP statement causes the statements between the LOOP keyword and
  1058. the AT_END_DO clause to be executed 'number' times. After the last
  1059. time the statements following the optional AT_END_DO clause are
  1060. executed. The loop can be terminated prematurely by using the BREAK
  1061. statement or the BRANCH statement. The BREAK statement causes program
  1062. execution to continue following the ENDLOOP clause. If the loop is
  1063. terminated prematurely for any reason then the statements following
  1064. the AT_END_DO clause are not executed. The BREAK statement is ignored
  1065. if it is encountered anywhere other than within a LOOP.
  1066.  
  1067. e.g.
  1068.         LOOP 3
  1069.             type 'hello' CR
  1070.             AT_END_DO
  1071.                 type 'this is the last hello'
  1072.         ENDLOOP
  1073.  
  1074. The above example causes the following data to be sent to the remote
  1075. system.
  1076.  
  1077.         hello
  1078.         hello
  1079.         hello
  1080.         this is the last hello
  1081.  
  1082. e.g. 2
  1083.         LOOP 2
  1084.             TYPE 'I am about to pause for 5 seconds'
  1085.             PAUSE 50
  1086.         ENDLOOP
  1087.  
  1088. The above example demonstrates a loop statement without an AT_END_DO
  1089. clause.
  1090.  
  1091.  
  1092. E.3.9)  WAIT statement
  1093.  
  1094. SYNTAX:
  1095.         WAIT tenths
  1096.             CASE string 1
  1097.                 statements
  1098.             CASE string 2
  1099.                 statements
  1100.                 .
  1101.                 .
  1102.             CASE string N
  1103.                 statements
  1104.             FAILURE
  1105.                 statements
  1106.         ENDWAIT
  1107.  
  1108. The WAIT statement causes the script program to WAIT for data from
  1109. the remote computer system. If any of the strings named by one of
  1110. the CASE clauses are received from the remote system then the
  1111. statements following that CASE clause are executed. If 'tenths'
  1112. tenths of a second go by with no data received from the remote system
  1113. or if the line drops then the statements following the optional
  1114. FAILURE clause are executed. After the statements following a CASE or
  1115. FAILURE clause are executed execution continues after the ENDWAIT
  1116. clause.
  1117.  
  1118. The string parameter of the CASE clause must have the same format as
  1119. a string in a TYPE statement. Multiple strings can be specified by
  1120. separating them with a comma (,). If there are multiple strings
  1121. separated by a comma then the statements following the CASE clause
  1122. are executed if any one of the named strings are received from the
  1123. remote system.
  1124.  
  1125. e.g.
  1126.         TYPE 'ATDP 438-8304' CR
  1127.         WAIT 600        { wait up to 60 seconds (600 tenths) }
  1128.             CASE 'CONNECT', 'CONNECT 1200', 'CONNECT 600', 'CONNECT 2400'
  1129.                 { the dial attempt has succeed so just continue }
  1130.                 { with the statement following the ENDWAIT }
  1131.             CASE 'NO CARRIER', 'BUSY', 'NO ANSWER'
  1132.                 MESSAGE 'Dial attempt has failed, try again later'
  1133.                 QUIT
  1134.             CASE 'ERROR', 'NO DIALTONE'
  1135.                 MESSAGE 'Fatal error during dial attempt'
  1136.                 QUIT
  1137.             FAILURE
  1138.                 MESSAGE 'Timeout, line lost or user ESC during Dial Attempt'
  1139.                 QUIT
  1140.         ENDWAIT
  1141.         WAIT 5
  1142.             CASE CR LF          { wait for rest of modem response }
  1143.         ENDWAIT
  1144.  
  1145. In the above example we send a dial request to a HAYES modem and use
  1146. the WAIT statement to check the result (note that you would normally
  1147. not have to do this since the above and more can be performed
  1148. automatically by the DIAL command).
  1149.  
  1150. e.g. 2
  1151.         LOOP 10
  1152.             TYPE CR
  1153.             WAIT 3 CASE '#' BREAK ENDWAIT
  1154.  
  1155.             AT_END_DO
  1156.                 MESSAGE 'PAD not responding with a # prompt.'
  1157.                 QUIT
  1158.         ENDLOOP
  1159.  
  1160. In the above example we send up to 10 carriage returns (one every
  1161. three tenths of a second) in an attempt to get a '#' prompt from an
  1162. Infonet PAD. The WAIT statement waits up to three tenths of a second
  1163. for a '#', if it fails there is no effect (since there is no FAILURE
  1164. clause). If the WAIT statement succeeds then the BREAK statement is
  1165. executed and the LOOP terminates prematurely. If the loop terminates
  1166. prematurely then the statements following the AT_END_DO clause are
  1167. not executed. Note that statements can be split over multiple lines.
  1168. The above WAIT statement would be more clearly written as;
  1169.  
  1170.         WAIT 3
  1171.             CASE '#'
  1172.                 BREAK
  1173.         ENDWAIT
  1174.  
  1175.  
  1176. E.4     Script Program Example
  1177.  
  1178. The following example is a complete script language program that
  1179. dials Infonet and requests a network service.
  1180.  
  1181.     { logon.mt - macro program to dial INFONET and request
  1182.                  network service }
  1183.  
  1184.     dial            { dial INFONET - uses config modem type & number }
  1185.  
  1186.     { try up to six times to get a pound sign }
  1187.     loop 6
  1188.         type CR
  1189.         wait 3 case '#' break endwait
  1190.  
  1191.         at_end_do
  1192.             message 'PAD not responding with #'
  1193.             quit
  1194.     endloop
  1195.  
  1196.     { perform network logon }
  1197.     type 'x' CR
  1198.     wait 50
  1199.         case '*'            { success }
  1200.         failure
  1201.             message 'PAD not responding with *'
  1202.             quit
  1203.     endwait
  1204.  
  1205.     type '.vmt' CR          { request network service }
  1206.     end
  1207.  
  1208.  
  1209. E.5     Detailed Script Language Syntax Definition
  1210.  
  1211. The following defines the syntax of all legal script language
  1212. programs.
  1213.  
  1214. Program     -> Lines END
  1215. Lines       -> Lines Line
  1216.             -> Line
  1217.             -> <empty>
  1218. Line        -> Label Statement
  1219. Label       -> <identifier> :
  1220.             -> <empty>
  1221. Statement   -> WAIT <integer> Waitcases Failcase ENDWAIT
  1222.             -> LOOP <integer> Lines Endstmnts ENDLOOP
  1223.             -> MESSAGE Charexp
  1224.             -> DOPF <integer>
  1225.             -> DIAL
  1226.             -> BRANCH <identifier>
  1227.             -> PAUSE <integer>
  1228.             -> QUIT
  1229.             -> TYPE Charexp
  1230.             -> BREAK
  1231. Waitcases   -> Waitcases Waitcase
  1232.             -> Waitcase
  1233. Waitcase    -> CASE Charexplist Lines
  1234. Charexplist -> Charexplist , Charexp
  1235.             -> Charexp
  1236. Failcase    -> FAILURE Lines
  1237.             -> <empty>
  1238. Endstmnts   -> AT_END_DO Lines
  1239.             -> <empty>
  1240. Charexp     -> Charexp Charterm
  1241.             -> Charterm
  1242. Charterm    -> Envcharvar
  1243.             -> Charconst
  1244.             -> Functionkey
  1245.             -> <string>
  1246. Charconst   -> CR
  1247.             -> LF
  1248.             -> BS
  1249.             -> BELL
  1250. Envcharvar  -> PF1
  1251.             -> PF2
  1252.             -> PF3
  1253.             -> PF4
  1254.             -> PF5
  1255.             -> PF6
  1256.             -> PF7
  1257.             -> PF8
  1258.             -> PF9
  1259.             -> PF10
  1260.             -> PASSWORD
  1261.             -> PHONE
  1262.             -> USERID
  1263. Functionkey -> LOCAL_LINE
  1264.             -> INDEX
  1265.             -> CANCEL
  1266.             -> PREVIOUS
  1267.             -> REPEAT
  1268.             -> GUIDE
  1269.             -> CORRECTION
  1270.             -> NEXT
  1271.             -> SEND
  1272.  
  1273. Notes:
  1274.  
  1275. i) <empty> means that the construct is optional.
  1276.  
  1277. ii) <identifier> is an identifier of up to 15 alphanumeric characters
  1278. (and underscore) in length. The first character of an identifier must
  1279. be alphabetic.
  1280.  
  1281. iii) <string> is a character string enclosed in single quotes. Single
  1282. quotes can be included within the string by putting two of them
  1283. together. For example to specify the string;
  1284.  
  1285.         that's all folks
  1286.  
  1287. you would enter
  1288.  
  1289.         'that''s all folks'.
  1290.  
  1291. iv) <integer> is an integer value in the range -32768 to 32767.
  1292. Values outside this range will cause undefined results.
  1293.  
  1294. v) Comments can appear anywhere in the program except within a token.
  1295.  
  1296. Examples:
  1297.  
  1298.         WAIT { this is a legal comment } 10
  1299.             CASE 'hello'
  1300.         ENDWAIT
  1301.  
  1302.         WAI{ this comment causes an error }T 10
  1303.             CASE 'hello'
  1304.         ENDWAIT
  1305.  
  1306.  
  1307. APPENDIX F      Entering Control Characters
  1308.                 ---------------------------
  1309.  
  1310. Control characters can be entered into configuration file parameters,
  1311. literal strings in a script language program and in the answers to
  1312. prompts in the installation program by using a two character digraph
  1313. of the form ^x where '^' is the circumflex character (ascii 94) and
  1314. 'x' is any other character. The sequence ^x causes the control
  1315. character whose value is the ascii value of the upper case version of
  1316. the character minus 64 to be entered into the string. For example ^m
  1317. causes a carriage return to be entered into the string (the ascii
  1318. value of an upper case 'm' is 77.  Seventy-seven minus 64 is equal to
  1319. 13 which is the ascii value of a carriage return).
  1320.  
  1321. The following table lists a number of useful digraphs:
  1322.  
  1323.         Digraph         Control Character       Ascii Value
  1324.  
  1325.           ^M                   CR                   13
  1326.           ^J                   LF                   10
  1327.           ^H                   BS                    8
  1328.           ^G                   BELL                  7
  1329.           ^L                   FF                   12
  1330.           ^I                   TAB                   9
  1331.           ^[                   ESC                  27
  1332.  
  1333. The following digraph/character combinations can be used to encode
  1334. Minitel functions keys within a string.
  1335.  
  1336.         Code            Function Key            Ascii Values
  1337.  
  1338.         ^SA               SEND                    19 65
  1339.         ^SB               PREVIOUS                19 66
  1340.         ^SC               REPEAT                  19 67
  1341.         ^SD               GUIDE                   19 68
  1342.         ^SE               CANCEL                  19 69
  1343.         ^SF               INDEX                   19 70
  1344.         ^SG               CORRECTION              19 71
  1345.         ^SH               NEXT                    19 72
  1346.         ^SI               LOCAL/LINE              19 73
  1347.  
  1348. If you wish to enter a circumflex (^) in a string as itself then you
  1349. must put two of them in a row. If you enter a sequence in a string of
  1350. the form ^x in a string and the ascii value of the character x is
  1351. less than 64 then the circumflex (^) is ignored.
  1352.  
  1353.  
  1354. APPENDIX G      Use of the Minitel Function Keys
  1355.                 --------------------------------
  1356.  
  1357. The following tables describe the most common meaning of each of the
  1358. Minitel function keys. Pressing the asterisk key (*) prior to a
  1359. function key modifies the meaning of a number of the keys.
  1360.  
  1361. FUNCTION KEY    MEANING
  1362.  
  1363. LOCAL LINE      Causes a disconnection from the current service.
  1364.  
  1365. SEND            Validation of character strings or completion
  1366.                 of a form.
  1367.  
  1368. REPEAT          Causes service to retransmit the previous screen.
  1369.                 Used to clear transmission errors.
  1370.  
  1371. * REPEAT        Refresh the current display with updates made since
  1372.                 the previous request.
  1373.  
  1374. INDEX           Return to the index of the service in use.
  1375.  
  1376. * INDEX         Access to the index at the highest level in the
  1377.                 case of a hierarchical index.
  1378.  
  1379. GUIDE           Request HELP from the service.
  1380.  
  1381. CORRECTION      Used to erase the last character typed.
  1382.  
  1383. The following function keys have slightly different meanings
  1384. depending on whether you are in a data entry screen or whether you
  1385. are giving a command to an application.
  1386.  
  1387.                 MEANING IN DATA             MEANING AS COMMAND
  1388. FUNCTION KEY    ENTRY SCREEN                TO APPLICATION
  1389.  
  1390. CANCEL          Deletes the contents of     Abort current enquiry.
  1391.                 the current field.
  1392.  
  1393. * CANCEL        Delete all fields on the    No Meaning
  1394.                 current form and move to
  1395.                 the first field.
  1396.  
  1397. NEXT            Move to following field.    Move to following page.
  1398.  
  1399. PREVIOUS        Move to previous field.     Move to previous page.
  1400.  
  1401. * NEXT          Move to following page.     Move to following
  1402.                                             document.
  1403.  
  1404. * PREVIOUS      If there is a previous      Return to the las menu
  1405.                 page then return to the     page or message.
  1406.                 first field of the previous
  1407.                 page otherwise move to the
  1408.                 first field of the current
  1409.                 page.
  1410.  
  1411. The above tables were adapted from tables in the Intelmatique
  1412. document titled 'USE OF THE MINITEL FUNCTION KEYS'.
  1413.  
  1414.  
  1415. APPENDIX H      Error Messages
  1416.                 --------------
  1417.  
  1418. This appendix lists the most common error messages that can occur
  1419. and recommends corrective that can be taken for each.
  1420.  
  1421. If the suggested corrective action fails for the following group of
  1422. commands then try exiting the emulator (with the SHIFT F3 command),
  1423. restarting the emulator (with the MT command) and then using the SHIFT
  1424. F1 command to restart.
  1425.  
  1426. Command(s)      Error and Corrective Action
  1427.  
  1428. SHIFT F1        "Timeout or Line Lost during Dial Attempt"
  1429.  
  1430.                 Retry the SHIFT F1 command.
  1431.  
  1432. SHIFT F1        "Dial Failure: Modem not responding to init string"
  1433.  
  1434.                 Make sure that your modem is connected and powered on
  1435.                 then retry the SHIFT F1 command.
  1436.  
  1437. SHIFT F1        "DIAL Attempt has Failed."
  1438.                 "Try Again ? (Y=Yes, N=No)"
  1439.  
  1440.                 Enter 'Y' if you want MiniTerm to try again. If you
  1441.                 want to quit enter 'N' then issue the SHIFT F3
  1442.                 command. If you want to try dialing manually enter
  1443.                 'N' then enter the dial command. If you get a
  1444.                 connection by dialing manually you can use the SHIFT
  1445.                 F4 command to logon to the network.
  1446.  
  1447. SHIFT F1,
  1448. SHIFT F2,
  1449. SHIFT F4        "PAD not responding with #"
  1450.                 "PAD not responding with *"
  1451.                 "Unable to connect to network service"
  1452.  
  1453.                 If any of the above errors occur then issue the
  1454.                 SHIFT F4 command (even if the error occured in a
  1455.                 SHIFT F1 or SHIFT F2 command).
  1456.                 
  1457. SHIFT F1,
  1458. SHIFT F2,
  1459. SHIFT F4        "User ID prompt not received"
  1460.  
  1461.                 If this error occurs then exit the emulator with the
  1462.                 SHIFT F3 command and start again.
  1463.  
  1464.  
  1465. If any of the following errors occur then you must exit the emulator
  1466. to take corrective action.
  1467.  
  1468. Command(s)      Error and Corrective Action
  1469.  
  1470. SHIFT F1        "Dial Failure: No PHONE parameter in config file"
  1471.  
  1472.                 To use the auto dial feature of MiniTerm you must
  1473.                 enter a value in response to the access number
  1474.                 prompt in MTINST. If this error occurs then re-run
  1475.                 MTINST and enter an access number.
  1476.  
  1477. ALT x, ALT q,
  1478. SHIFT F3        "Error saving configuration to <xxx>"
  1479.  
  1480.                 Whenever the configuration is changed due to a command
  1481.                 line parameter or automatically due to an invalid
  1482.                 hardware specification MiniTerm attempts to update
  1483.                 the configuration file before exiting. The above
  1484.                 error is displayed when MiniTerm is unable to update
  1485.                 the configuration file. Possible reasons include a
  1486.                 full disk or bad disk sectors. To correct the problem
  1487.                 try deleting unnecessary files from the disk or move
  1488.                 MiniTerm onto a different disk.
  1489.  
  1490. SHIFT Fx        "Macro <xxx> not found."
  1491.  
  1492.                 Make sure that the file 'xxx' is in the default drive
  1493.                 and directory before starting the emulator.
  1494.  
  1495. SHIFT Fx        "Unexpected EOF or disk error while reading <xxx>"
  1496.                 "Aborting Macro - Bad Instruction encountered"
  1497.                 "Aborting Macro - Bad env var found"
  1498.                 "Aborting Macro - Bad function key found"
  1499.                 "Aborting Macro - Bad character item found"
  1500.  
  1501.                 If any of the above errors occur then the script
  1502.                 program that was running when the error occurred
  1503.                 has become corrupted. Try recompiling the script
  1504.                 program with MTC.
  1505.  
  1506. SHIFT Fx        "Illegal value in key PFx -- Cannot Execute"
  1507.  
  1508.                 This error occurs if there is a bad definition for
  1509.                 the program function key PFx in the configuration
  1510.                 file. Possible errors are;
  1511.  
  1512.                 - A character other than an upper case 'M' or 'S'
  1513.                   was specified as the first character of the key
  1514.                   definition
  1515.  
  1516.                 - A character other than '-' was specified as the
  1517.                   second character of the key definition
  1518.  
  1519.                 To correct this problem fix the program function key
  1520.                 definition in the configuration file.
  1521.  
  1522.  
  1523. APPENDIX I      Printing the screen
  1524.                 -------------------
  1525.  
  1526. From within the emulator it is possible to send the contents of your
  1527. screen to the printer. The steps the your must perform to do this
  1528. depends on which type of display adaptor that you have in your PC.
  1529.  
  1530. -> IBM Monochrome Display Adaptor (MDA)
  1531.  
  1532. To print the contents of the screen hold down the SHIFT key and press
  1533. the PrtSc key.
  1534.  
  1535. -> EGA and CGA display adaptors
  1536.  
  1537. In order to be able to print the screen when using a CGA or EGA
  1538. display adaptor you must run the DOS GRAPHICS command before running
  1539. the emulator (See the GRAPHICS command in your DOS operating system
  1540. reference manual).
  1541.  
  1542. To print the contents of the screen hold down the SHIFT key and press
  1543. the PrtSc key.
  1544.  
  1545. -> Hercules display adaptor
  1546.  
  1547. In order to be able to print the screen when using a Hercules graphic
  1548. card you must issue the following command before running the
  1549. emulator.
  1550.  
  1551.         HGC PRINT
  1552.  
  1553. The program HGC.COM can be found on the diskette that came with your
  1554. Hercules graphics card.
  1555.  
  1556. To print the contents of the screen hold down the SHIFT key and press
  1557. the PrtSc key, then release the SHIFT key and press the zero (0) key.
  1558.  
  1559.